[INFO] cloning repository https://github.com/NadiaYvette/telix
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/NadiaYvette/telix" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNadiaYvette%2Ftelix", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNadiaYvette%2Ftelix'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 49354dcd44fbbc29933f3700c1f96a5b466ba33f
[INFO] fixing NadiaYvette/telix against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNadiaYvette%2Ftelix" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-1-tc1/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-1-tc1/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/NadiaYvette/telix
[INFO] finished tweaking git repo https://github.com/NadiaYvette/telix
[INFO] tweaked toml for git repo https://github.com/NadiaYvette/telix written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/NadiaYvette/telix on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/NadiaYvette/telix already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5
[INFO] running `Command { std: "docker" "start" "dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]     Checking telix-userlib v0.1.0 (/opt/rustwide/workdir/userlib)
[INFO] [stderr]     Checking telix-kernel v0.1.0 (/opt/rustwide/workdir/kernel)
[INFO] [stdout] error: couldn't read `kernel/src/io/initramfs.cpio`: No such file or directory (os error 2)
[INFO] [stdout]   --> kernel/src/io/initramfs.rs:21:27
[INFO] [stdout]    |
[INFO] [stdout] 21 | static INITRAMFS: &[u8] = include_bytes!("initramfs.cpio");
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl`
[INFO] [stdout]   --> userlib/src/start.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | / fn panic(info: &core::panic::PanicInfo) -> ! {
[INFO] [stdout] ...  |
[INFO] [stdout] 75 | |     crate::syscall::exit(1);
[INFO] [stdout] 76 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the lang item is first defined in crate `std` (which `test` depends on)
[INFO] [stdout]    = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-ebc3593764c44f83.rmeta
[INFO] [stdout]    = note: second definition in the local crate (`userlib`)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read `kernel/src/io/initramfs.cpio`: No such file or directory (os error 2)
[INFO] [stdout]    --> kernel/src/main.rs:719:32
[INFO] [stdout]     |
[INFO] [stdout] 719 |         let cpio_data: &[u8] = include_bytes!("io/initramfs.cpio");
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read `kernel/src/io/initramfs.cpio`: No such file or directory (os error 2)
[INFO] [stdout]    --> kernel/src/main.rs:750:32
[INFO] [stdout]     |
[INFO] [stdout] 750 |         let cpio_data: &[u8] = include_bytes!("io/initramfs.cpio");
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `telix-userlib` (lib test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]  --> kernel/src/arch/x86_64/serial.rs:7:38
[INFO] [stdout]   |
[INFO] [stdout] 7 | use core::sync::atomic::{AtomicBool, AtomicUsize};
[INFO] [stdout]   |                                      ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_PAGE_SIZE`
[INFO] [stdout]   --> kernel/src/mm/paged_array.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::page::{self, MAX_PAGE_SIZE};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `slab`
[INFO] [stdout]   --> kernel/src/sched/scheduler.rs:26:23
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::mm::{phys, slab};
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_byte`
[INFO] [stdout]     --> kernel/src/sched/scheduler.rs:4191:55
[INFO] [stdout]      |
[INFO] [stdout] 4191 |                     use crate::arch::x86_64::serial::{put_byte, put_bytes, put_dec_u64};
[INFO] [stdout]      |                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_byte`
[INFO] [stdout]     --> kernel/src/sched/scheduler.rs:6599:63
[INFO] [stdout]      |
[INFO] [stdout] 6599 | ...                   use crate::arch::x86_64::serial::{put_byte, put_bytes, put_dec_u64};
[INFO] [stdout]      |                                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_hex_u64`
[INFO] [stdout]      --> kernel/src/sched/scheduler.rs:10930:68
[INFO] [stdout]       |
[INFO] [stdout] 10930 |             use crate::arch::x86_64::serial::{put_byte, put_bytes, put_hex_u64, put_dec_u64};
[INFO] [stdout]       |                                                                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_byte`
[INFO] [stdout]      --> kernel/src/sched/scheduler.rs:12656:59
[INFO] [stdout]       |
[INFO] [stdout] 12656 |                         use crate::arch::x86_64::serial::{put_byte, put_bytes, put_dec_u64};
[INFO] [stdout]       |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::sync::atomic::Ordering`
[INFO] [stdout]    --> kernel/src/main.rs:749:13
[INFO] [stdout]     |
[INFO] [stdout] 749 |         use core::sync::atomic::Ordering;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MMUPAGE_SIZE`
[INFO] [stdout]     --> kernel/src/main.rs:1453:26
[INFO] [stdout]      |
[INFO] [stdout] 1453 |     use mm::page::{self, MMUPAGE_SIZE};
[INFO] [stdout]      |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl`
[INFO] [stdout]   --> kernel/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / fn panic(info: &core::panic::PanicInfo) -> ! {
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the lang item is first defined in crate `std` (which `test` depends on)
[INFO] [stdout]    = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-ebc3593764c44f83.rmeta
[INFO] [stdout]    = note: second definition in the local crate (`telix_kernel`)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:245:5
[INFO] [stdout]     |
[INFO] [stdout] 245 |     READY_QUEUE[READY_TAIL] = fiber_id;
[INFO] [stdout]     |     ^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> userlib/src/green.rs:244:1
[INFO] [stdout]     |
[INFO] [stdout] 244 | unsafe fn enqueue_ready(fiber_id: u8) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |     READY_QUEUE[READY_TAIL] = fiber_id;
[INFO] [stdout]     |                 ^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:246:5
[INFO] [stdout]     |
[INFO] [stdout] 246 |     READY_TAIL = (READY_TAIL + 1) % MAX_FIBERS;
[INFO] [stdout]     |     ^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:246:19
[INFO] [stdout]     |
[INFO] [stdout] 246 |     READY_TAIL = (READY_TAIL + 1) % MAX_FIBERS;
[INFO] [stdout]     |                   ^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:247:5
[INFO] [stdout]     |
[INFO] [stdout] 247 |     READY_COUNT += 1;
[INFO] [stdout]     |     ^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:251:8
[INFO] [stdout]     |
[INFO] [stdout] 251 |     if READY_COUNT == 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> userlib/src/green.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | unsafe fn dequeue_ready() -> i32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:254:14
[INFO] [stdout]     |
[INFO] [stdout] 254 |     let id = READY_QUEUE[READY_HEAD] as i32;
[INFO] [stdout]     |              ^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:254:26
[INFO] [stdout]     |
[INFO] [stdout] 254 |     let id = READY_QUEUE[READY_HEAD] as i32;
[INFO] [stdout]     |                          ^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:255:5
[INFO] [stdout]     |
[INFO] [stdout] 255 |     READY_HEAD = (READY_HEAD + 1) % MAX_FIBERS;
[INFO] [stdout]     |     ^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:255:19
[INFO] [stdout]     |
[INFO] [stdout] 255 |     READY_HEAD = (READY_HEAD + 1) % MAX_FIBERS;
[INFO] [stdout]     |                   ^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> userlib/src/green.rs:256:5
[INFO] [stdout]     |
[INFO] [stdout] 256 |     READY_COUNT -= 1;
[INFO] [stdout]     |     ^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> userlib/src/poll.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     let result = poll(&mut poll_fds[..count], timeout_ms);
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `telix-kernel` (bin "telix-kernel" test) due to 4 previous errors; 9 warnings emitted
[INFO] [stdout] warning: constant `FS_LOCK_ERR` is never used
[INFO] [stdout]   --> userlib/src/fd.rs:84:7
[INFO] [stdout]    |
[INFO] [stdout] 84 | const FS_LOCK_ERR: u64 = 0x28FF;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CON_POLL` is never used
[INFO] [stdout]   --> userlib/src/poll.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const CON_POLL: u64 = 0x3110;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CON_POLL_OK` is never used
[INFO] [stdout]   --> userlib/src/poll.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const CON_POLL_OK: u64 = 0x3111;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PTY_CLOSE_OK` is never used
[INFO] [stdout]   --> userlib/src/pty.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const PTY_CLOSE_OK: u64 = 0x9031;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PTY_ERROR` is never used
[INFO] [stdout]   --> userlib/src/pty.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const PTY_ERROR: u64 = 0x9F00;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYS_PORT_RECV_TIMEOUT` is never used
[INFO] [stdout]   --> userlib/src/syscall.rs:66:7
[INFO] [stdout]    |
[INFO] [stdout] 66 | const SYS_PORT_RECV_TIMEOUT: u64 = 104;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYS_IRQ_ACK` is never used
[INFO] [stdout]   --> userlib/src/syscall.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 | const SYS_IRQ_ACK: u64 = 112;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: direct cast of function item into an integer
[INFO] [stdout]    --> userlib/src/green.rs:530:62
[INFO] [stdout]     |
[INFO] [stdout] 530 |             core::ptr::write(ret_addr_slot, fiber_trampoline as u64);
[INFO] [stdout]     |                                                              ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(function_casts_as_integer)]` on by default
[INFO] [stdout] help: first cast to a pointer `as *const ()`
[INFO] [stdout]     |
[INFO] [stdout] 530 |             core::ptr::write(ret_addr_slot, fiber_trampoline as *const () as u64);
[INFO] [stdout]     |                                                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read `kernel/src/io/initramfs.cpio`: No such file or directory (os error 2)
[INFO] [stdout]   --> kernel/src/io/initramfs.rs:21:27
[INFO] [stdout]    |
[INFO] [stdout] 21 | static INITRAMFS: &[u8] = include_bytes!("initramfs.cpio");
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read `kernel/src/io/initramfs.cpio`: No such file or directory (os error 2)
[INFO] [stdout]    --> kernel/src/main.rs:719:32
[INFO] [stdout]     |
[INFO] [stdout] 719 |         let cpio_data: &[u8] = include_bytes!("io/initramfs.cpio");
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read `kernel/src/io/initramfs.cpio`: No such file or directory (os error 2)
[INFO] [stdout]    --> kernel/src/main.rs:750:32
[INFO] [stdout]     |
[INFO] [stdout] 750 |         let cpio_data: &[u8] = include_bytes!("io/initramfs.cpio");
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]  --> kernel/src/arch/x86_64/serial.rs:7:38
[INFO] [stdout]   |
[INFO] [stdout] 7 | use core::sync::atomic::{AtomicBool, AtomicUsize};
[INFO] [stdout]   |                                      ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_PAGE_SIZE`
[INFO] [stdout]   --> kernel/src/mm/paged_array.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::page::{self, MAX_PAGE_SIZE};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `slab`
[INFO] [stdout]   --> kernel/src/sched/scheduler.rs:26:23
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::mm::{phys, slab};
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_byte`
[INFO] [stdout]     --> kernel/src/sched/scheduler.rs:4191:55
[INFO] [stdout]      |
[INFO] [stdout] 4191 |                     use crate::arch::x86_64::serial::{put_byte, put_bytes, put_dec_u64};
[INFO] [stdout]      |                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_byte`
[INFO] [stdout]     --> kernel/src/sched/scheduler.rs:6599:63
[INFO] [stdout]      |
[INFO] [stdout] 6599 | ...                   use crate::arch::x86_64::serial::{put_byte, put_bytes, put_dec_u64};
[INFO] [stdout]      |                                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_hex_u64`
[INFO] [stdout]      --> kernel/src/sched/scheduler.rs:10930:68
[INFO] [stdout]       |
[INFO] [stdout] 10930 |             use crate::arch::x86_64::serial::{put_byte, put_bytes, put_hex_u64, put_dec_u64};
[INFO] [stdout]       |                                                                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put_byte`
[INFO] [stdout]      --> kernel/src/sched/scheduler.rs:12656:59
[INFO] [stdout]       |
[INFO] [stdout] 12656 |                         use crate::arch::x86_64::serial::{put_byte, put_bytes, put_dec_u64};
[INFO] [stdout]       |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::sync::atomic::Ordering`
[INFO] [stdout]    --> kernel/src/main.rs:749:13
[INFO] [stdout]     |
[INFO] [stdout] 749 |         use core::sync::atomic::Ordering;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MMUPAGE_SIZE`
[INFO] [stdout]     --> kernel/src/main.rs:1453:26
[INFO] [stdout]      |
[INFO] [stdout] 1453 |     use mm::page::{self, MMUPAGE_SIZE};
[INFO] [stdout]      |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fallback_sp`
[INFO] [stdout]    --> kernel/src/arch/x86_64/exception.rs:226:34
[INFO] [stdout]     |
[INFO] [stdout] 226 | fn validate_iretq_frame(sp: u64, fallback_sp: u64, vector: u64) -> u64 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fallback_sp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `near_top`
[INFO] [stdout]     --> kernel/src/arch/x86_64/exception.rs:1436:17
[INFO] [stdout]      |
[INFO] [stdout] 1436 |             let near_top = false; // legacy field, kept for the log path
[INFO] [stdout]      |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_near_top`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `best_freq` is never read
[INFO] [stdout]    --> kernel/src/arch/x86_64/lapic.rs:173:30
[INFO] [stdout]     |
[INFO] [stdout] 173 |     let mut best_freq: u64 = 0;
[INFO] [stdout]     |                              ^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 216 |     best_freq = samples[1];
[INFO] [stdout]     |     ---------------------- `best_freq` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scr_w`
[INFO] [stdout]    --> kernel/src/drivers/fb_console.rs:182:37
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn scroll_up(fb: usize, pitch: u32, scr_w: u32, scr_h: u32, _rows: u32) {
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scr_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> kernel/src/ipc/port.rs:784:33
[INFO] [stdout]     |
[INFO] [stdout] 784 | pub fn send_nb(port_id: PortId, mut msg: Message) -> Result<(), Message> {
[INFO] [stdout]     |                                 ----^^^
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> kernel/src/ipc/port.rs:844:30
[INFO] [stdout]     |
[INFO] [stdout] 844 | pub fn send(port_id: PortId, mut msg: Message) -> Result<(), ()> {
[INFO] [stdout]     |                              ----^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> kernel/src/ipc/port_set.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pte`
[INFO] [stdout]    --> kernel/src/mm/fault.rs:145:14
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let (pte, is_present, is_zeroed) = if pte == 0 && !fork_group.is_null() {
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_pte`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::read_volatile` is unsafe and requires unsafe block
[INFO] [stdout]   --> kernel/src/mm/radix_pt.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     core::ptr::read_volatile(ptr)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> kernel/src/mm/radix_pt.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | unsafe fn pt_read(ptr: *const u64) -> u64 {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::write_volatile` is unsafe and requires unsafe block
[INFO] [stdout]    --> kernel/src/mm/radix_pt.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     core::ptr::write_volatile(ptr, val);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> kernel/src/mm/radix_pt.rs:97:1
[INFO] [stdout]     |
[INFO] [stdout]  97 | unsafe fn pt_write(ptr: *mut u64, val: u64) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `healed` is never read
[INFO] [stdout]     --> kernel/src/mm/phys.rs:1328:25
[INFO] [stdout]      |
[INFO] [stdout] 1328 |                         healed += 1;
[INFO] [stdout]      |                         ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snap_base`
[INFO] [stdout]     --> kernel/src/sched/scheduler.rs:1365:9
[INFO] [stdout]      |
[INFO] [stdout] 1365 |     let snap_base = entry_sp.wrapping_add(CALLER_FRAME_OFFSET);
[INFO] [stdout]      |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_snap_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags`
[INFO] [stdout]      --> kernel/src/sched/scheduler.rs:10880:54
[INFO] [stdout]       |
[INFO] [stdout] 10880 | pub fn wait4_for_task(target_task_id: u32, pid: i64, flags: u32) -> (u64, i32, i32) {
[INFO] [stdout]       |                                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_flags`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ps`
[INFO] [stdout]     --> kernel/src/syscall/handlers.rs:4186:9
[INFO] [stdout]      |
[INFO] [stdout] 4186 |     let ps = page::page_size();
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_ps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `telix-kernel` (bin "telix-kernel") due to 4 previous errors; 23 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5", kill_on_drop: false }`
[INFO] [stdout] dba4335d0e0a285957bea81f9c6a399e7c9c82fbbcfef8ac126650e1c84a03d5
